package com.adee.nowcoder.huawei;

import java.util.*;

/**
 * 明明的随机数
 *
 * 描述
 * 明明生成了
 * N个1到500之间的随机整数。请你删去其中重复的数字，即相同的数字只保留一个，把其余相同的数去掉，
 * 然后再把这些数从小到大排序，按照排好的顺序输出。
 *
 * 数据范围：
 * 1
 * ≤
 *
 * ≤
 * 1000
 *
 * 1≤n≤1000  ，输入的数字大小满足
 * 1
 * ≤
 * ≤
 * 500
 *
 * 1≤val≤500
 * 输入描述：
 * 第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数，代表明明生成的随机数。 具体格式可以参考下面的"示例"。
 * 输出描述：
 * 输出多行，表示输入数据处理后的结果
 *
 * 示例1
 * 输入：
 * 3
 * 2
 * 2
 * 1
 *
 * 输出：
 * 1
 * 2
 *
 * 说明：
 * 输入解释：
 * 第一个数字是3，也即这个小样例的N=3，说明用计算机生成了3个1到500之间的随机整数，接下来每行一个随机数字，共3行，也即这3个随机数字为：
 * 2
 * 2
 * 1
 * 所以样例的输出为：
 * 1
 * 2
 */
public class T003_HJ3 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int len = in.nextInt();
            int[] arr = new int[len];
            for (int i = 0; i < len; i++) {
                arr[i] = in.nextInt();
            }
            // 排序，从小到大
            sort(arr);
            // 有序数组去重，双指针
            int i = 0,j = 1;
            while (j < arr.length) {
                if (arr[j] != arr[i]) arr[++i] = arr[j];
                ++j;
            }
            for (int k = 0; k <= i; k++) {
                System.out.println(arr[k]);
            }

            List<Integer> list = new ArrayList<>();
            list.sort((a,b) -> a-b);
        }


    }

    static void sort(int[] arr) {
        int tmp;
        for (int i = arr.length; i > 0; i--) {
            for (int j = 0; j < i-1; j++) {
                if(arr[j] > arr[j+1]) {
                    tmp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = tmp;
                }
            }
        }
    }




    // 解法2
//    import java.util.*;
//
//    // 注意类名必须为 Main, 不要有任何 package xxx 信息
//    public class Main {
//        public static void main(String[] args) {
//            Scanner in = new Scanner(System.in);
//            // 注意 hasNext 和 hasNextLine 的区别
//            while (in.hasNextLine()) { // 注意 while 处理多个 case
//                int n = Integer.parseInt(in.nextLine());
//                Set<Integer> set = new HashSet<>();
//                for(int i = 0; i < n; i++) {
//                    set.add(Integer.parseInt(in.nextLine()));
//                }
//                List<Integer> list = new ArrayList<>();
//                list.addAll(set);
//                list.sort((a,b)->a-b);
//                for(int i : list) {
//                    System.out.println(i);
//                }
//
//            }
//        }
//    }
}
